using System;
using System.Collections.Generic;
using System.Text;
using LngT.Interfaces.UserRoles;

namespace LngT.Interfaces.UserRoles
    {
    [Serializable]
    public class UserRoleBase: IUserRole
        {
        protected IUserRole _next;
        public UserRoleBase( IUserRole next )
            {
            _next = next;
            }

        public virtual bool CanAddUsers()
            {
            if( _next != null )
                return _next.CanAddUsers();
            else
                return false;
            }

        public virtual bool CanRemoveUsers()
            {
            if( _next != null )
                return _next.CanRemoveUsers();
            else
                return false;
            }

        public virtual bool CanAddDatabases()
            {
            if( _next != null )
                return _next.CanAddDatabases();
            else
                return false;
            }

        public virtual bool CanRemoveDatabases()
            {
            if( _next != null )
                return _next.CanRemoveDatabases();
            else
                return false;
            }

        public virtual bool CanGetDatabaseList()
            {
            if( _next != null )
                return _next.CanGetDatabaseList();
            else
                return false;
            }

        public virtual bool CanGetUserList()
            {
            if( _next != null )
                return _next.CanGetUserList();
            else
                return false;
            }

        public virtual bool CanGetDatabase()
            {
            if( _next != null )
                return _next.CanGetDatabase();
            else
                return false;
            }
        }
    }
